#ifndef MUSICSLIDER_H
#define MUSICSLIDER_H

#include <QWidget>

namespace Ui
{
    class musicSlider;
}

class musicSlider final : public QWidget
{
    Q_OBJECT

public:
    explicit musicSlider(QWidget *parent = nullptr);
    void setStep(float radio); // 设置滑块移动步长
    ~musicSlider() override;

signals:
    void setMusicSliderPosition(float radio); // 发送滑块位置信号

protected:
    void mousePressEvent(QMouseEvent *event) override;   // 鼠标按下事件处理
    void mouseMoveEvent(QMouseEvent *event) override;    // 鼠标移动事件处理
    void mouseReleaseEvent(QMouseEvent *event) override; // 鼠标释放事件处理
    void moveSlider() const;                             // 移动滑块位置

private:
    Ui::musicSlider *ui;
    int current_pos_; // 当前位置，用于记录在布局中的当前位置
    int maxWidth_;    // 最大宽度，用于限制布局或显示的最大宽度
};

#endif // MUSICSLIDER_H
